home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-09-16 | 11.1 KB | 515 lines | [TEXT/CCL2] |
-
- (in-package :traps) ;
- ; Created: Friday, September 15, 1989 at 5:01 PM
- ; SANE.p
- ; Pascal Interface to the Macintosh Libraries
- ;
- ; Copyright Apple Computer, Inc. 1985-1989
- ; All rights reserved
- ;
-
- ; $IFC UNDEFINED UsingIncludes
- ; $SETC UsingIncludes := 0
- ; $ENDC
-
- ; $IFC NOT UsingIncludes
-
- ; $ENDC
-
- ; $IFC UNDEFINED UsingSANE
- ; $SETC UsingSANE := 1
-
- ; $I+
- ; $SETC SANEIncludes := UsingIncludes
- ; $SETC UsingIncludes := 1
- ; $SETC UsingIncludes := SANEIncludes
-
- ; Elems881 mode set by -d Elems881=true on Pascal command line
-
- ; $IFC UNDEFINED Elems881
- ; $SETC Elems881 = FALSE
- ; $ENDC
-
- ; $IFC OPTION(MC68881)
-
- ; *======================================================================*
- ; * The interface specific to the MC68881 SANE library *
- ; *======================================================================*
-
- #+mc68881
- (progn
- (defconstant $Inexact 8)
- (defconstant $DivByZero 16)
- (defconstant $Underflow 32)
- (defconstant $Overflow 64)
- (defconstant $Invalid 128)
- (defconstant $CurInex1 256)
- (defconstant $CurInex2 512)
- (defconstant $CurDivByZero 1024)
- (defconstant $CurUnderflow 2048)
- (defconstant $CurOverflow 4096)
- (defconstant $CurOpError 8192)
- (defconstant $CurSigNaN 16384)
- (defconstant $CurBSonUnor 32768)
- )
-
- ; $ELSEC
-
- ; *======================================================================*
- ; * The interface specific to the software SANE library *
- ; *======================================================================*
-
- #-mc68881
- (progn
- (defconstant $Invalid 1)
- (defconstant $Underflow 2)
- (defconstant $Overflow 4)
- (defconstant $DivByZero 8)
- (defconstant $Inexact 16)
- (defconstant $IEEEDefaultEnv 0) ; IEEE-default floating-point environment constant
- )
- ; $ENDC
-
- ; *======================================================================*
- ; * The common interface for the SANE library *
- ; *======================================================================*
-
- (defconstant $DecStrLen 255)
- (defconstant $SigDigLen 20) ; for 68K; use 28 in 6502 SANE
-
- (def-mactype :relop (find-mactype :unsigned-byte))
-
- (def-mactype :numclass (find-mactype :unsigned-byte))
-
- (def-mactype :rounddir (find-mactype :unsigned-byte))
-
- (def-mactype :roundpre (find-mactype :unsigned-byte))
-
- (def-mactype :decimalkind (find-mactype :unsigned-byte))
-
- ; $IFC OPTION(MC68881)
-
- ; *======================================================================*
- ; * The interface specific to the MC68881 SANE library *
- ; *======================================================================*
- #+mc68881
- (progn
- (def-mactype :exception (find-mactype :signed-long))
-
- (defrecord Environment
- (FPCR :signed-long)
- (FPSR :signed-long)
- )
-
- (def-mactype :extended80 (find-mactype :array))
-
- (defrecord TrapVector
- (Unordered :signed-long)
- (Inexact :signed-long)
- (DivByZero :signed-long)
- (Underflow :signed-long)
- (OpError :signed-long)
- (Overflow :signed-long)
- (SigNaN :signed-long)
- )
- )
-
- ; $ELSEC
-
- ; *======================================================================*
- ; * The interface specific to the software SANE library *
- ; *======================================================================*
- #+mc68881
- (progn
- (def-mactype :exception (find-mactype :signed-integer))
-
- (def-mactype :environment (find-mactype :signed-integer))
-
- (def-mactype :extended96 (find-mactype :array))
-
- (defrecord MiscHaltInfo
- (HaltExceptions :signed-integer)
- (PendingCCR :signed-integer)
- (PendingD0 :signed-long)
- )
- )
- ; $ENDC
-
- ; *======================================================================*
- ; * The common interface for the SANE library *
- ; *======================================================================*
-
- (def-mactype :decstr (find-mactype :string))
-
- (defrecord DecForm
- (filler1 :signed-byte)
- (style :unsigned-byte)
- (digits :signed-integer)
- )
-
- (defrecord Decimal
- (filler1 :signed-byte)
- (sgn :unsigned-byte)
- (exp :signed-integer)
- (sig (:string #$sigdiglen))
- )
-
- (def-mactype :cstrptr (find-mactype :pointer))
-
- ; $IFC OPTION(MC68881)
-
- ; return IEEE default environment
-
- #| Not in ROM
- (deftrap _ieeedefaultenv nil
- (:stack :signed-integer)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _settrapvector ((traps :trapvector))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _gettrapvector ((traps (:pointer :trapvector)))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _x96tox80 ((x extended))
- (:stack (:array :signed-integer 5))
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _x80tox96 ((x (:array :signed-integer 5)))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _sin ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _cos ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _arctan ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _exp ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _ln ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _log2 ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _ln1 ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _exp2 ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _exp1 ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _tan ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _gethaltvector nil
- (:stack :signed-long)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _sethaltvector ((v :signed-long))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _x96tox80 ((x (:array :signed-integer 6)))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _x80tox96 ((x extended))
- (:stack (:array :signed-integer 6))
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _log2 ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _ln1 ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _exp2 ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _exp1 ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _tan ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _num2integer ((x extended))
- (:stack :signed-integer)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _num2longint ((x extended))
- (:stack :signed-long)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _num2real ((x extended))
- (:stack real)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _num2double ((x extended))
- (:stack double)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _num2extended ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _num2comp ((x extended))
- (:stack :comp)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _num2dec ((f :decform) (x extended) (d (:pointer :decimal)))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _dec2num ((d :decimal))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _num2str ((f :decform) (x extended) (s (:pointer (:string decstrlen))))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _str2num ((s (:string decstrlen)))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _str2dec ((s (:string decstrlen)) (index (:pointer :signed-integer)) (d (:pointer :decimal)) (validprefix (:pointer :boolean)))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _cstr2dec ((s (:pointer :character)) (index (:pointer :signed-integer)) (d (:pointer :decimal)) (validprefix (:pointer :boolean)))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _dec2str ((f :decform) (d :decimal) (s (:pointer (:string decstrlen))))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _remainder ((x extended) (y extended) (quo (:pointer :signed-integer)))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _rint ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _scalb ((n :signed-integer) (x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _logb ((x extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _copysign ((x extended) (y extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _nextreal ((x real) (y real))
- (:stack real)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _nextdouble ((x double) (y double))
- (:stack double)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _nextextended ((x extended) (y extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _xpwri ((x extended) (i :signed-integer))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _xpwry ((x extended) (y extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _compound ((r extended) (n extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _annuity ((r extended) (n extended))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _randomx ((x (:pointer extended)))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _classreal ((x real))
- (:stack :unsigned-byte)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _classdouble ((x double))
- (:stack :unsigned-byte)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _classcomp ((x :comp))
- (:stack :unsigned-byte)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _classextended ((x extended))
- (:stack :unsigned-byte)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _signnum ((x extended))
- (:stack :signed-integer)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _nan ((i :signed-integer))
- (:stack extended)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _setexception ((e :signed-integer) (b :boolean))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _testexception ((e :signed-integer))
- (:stack :boolean)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _sethalt ((e :signed-integer) (b :boolean))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _testhalt ((e :signed-integer))
- (:stack :boolean)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _setround ((r :unsigned-byte))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _getround nil
- (:stack :unsigned-byte)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _setprecision ((p :unsigned-byte))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _getprecision nil
- (:stack :unsigned-byte)
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _setenvironment ((e :signed-integer))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _getenvironment ((e (:pointer :signed-integer)))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _procentry ((e (:pointer :signed-integer)))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _procexit ((e :signed-integer))
- nil
- (:stack-trap #x0))
- |#
- #| Not in ROM
- (deftrap _relation ((x extended) (y extended))
- (:stack :unsigned-byte)
- (:stack-trap #x0))
- |#
- ; $ENDC
-
-
- (export '($sigdiglen $decstrlen $ieeedefaultenv $inexact $divbyzero $overflow
- $underflow $invalid $curbsonunor $cursignan $curoperror $curoverflow
- $curunderflow $curdivbyzero $curinex2 $curinex1 $invalid $overflow
- $underflow $divbyzero $inexact))
- (provide-interface 'SANE)